load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")

go_library(
    name = "go_default_library",
    srcs = [
        "client_ca_hook.go",
        "client_util.go",
        "controller.go",
        "doc.go",
        "import_known_versions.go",
        "master.go",
        "services.go",
    ],
    importpath = "k8s.io/kubernetes/pkg/master",
    visibility = ["//visibility:public"],
    deps = [
        "//pkg/apis/admission/install:go_default_library",
        "//pkg/apis/admissionregistration/install:go_default_library",
        "//pkg/apis/apps/install:go_default_library",
        "//pkg/apis/auditregistration/install:go_default_library",
        "//pkg/apis/authentication/install:go_default_library",
        "//pkg/apis/authorization/install:go_default_library",
        "//pkg/apis/autoscaling/install:go_default_library",
        "//pkg/apis/batch/install:go_default_library",
        "//pkg/apis/certificates/install:go_default_library",
        "//pkg/apis/coordination/install:go_default_library",
        "//pkg/apis/core:go_default_library",
        "//pkg/apis/core/install:go_default_library",
        "//pkg/apis/discovery/install:go_default_library",
        "//pkg/apis/events/install:go_default_library",
        "//pkg/apis/extensions/install:go_default_library",
        "//pkg/apis/imagepolicy/install:go_default_library",
        "//pkg/apis/networking/install:go_default_library",
        "//pkg/apis/node/install:go_default_library",
        "//pkg/apis/policy/install:go_default_library",
        "//pkg/apis/rbac/install:go_default_library",
        "//pkg/apis/scheduling/install:go_default_library",
        "//pkg/apis/settings/install:go_default_library",
        "//pkg/apis/storage/install:go_default_library",
        "//pkg/features:go_default_library",
        "//pkg/kubeapiserver/options:go_default_library",
        "//pkg/kubelet/client:go_default_library",
        "//pkg/master/reconcilers:go_default_library",
        "//pkg/master/tunneler:go_default_library",
        "//pkg/registry/admissionregistration/rest:go_default_library",
        "//pkg/registry/apps/rest:go_default_library",
        "//pkg/registry/auditregistration/rest:go_default_library",
        "//pkg/registry/authentication/rest:go_default_library",
        "//pkg/registry/authorization/rest:go_default_library",
        "//pkg/registry/autoscaling/rest:go_default_library",
        "//pkg/registry/batch/rest:go_default_library",
        "//pkg/registry/certificates/rest:go_default_library",
        "//pkg/registry/coordination/rest:go_default_library",
        "//pkg/registry/core/rangeallocation:go_default_library",
        "//pkg/registry/core/rest:go_default_library",
        "//pkg/registry/core/service/ipallocator:go_default_library",
        "//pkg/registry/core/service/ipallocator/controller:go_default_library",
        "//pkg/registry/core/service/portallocator/controller:go_default_library",
        "//pkg/registry/discovery/rest:go_default_library",
        "//pkg/registry/events/rest:go_default_library",
        "//pkg/registry/extensions/rest:go_default_library",
        "//pkg/registry/networking/rest:go_default_library",
        "//pkg/registry/node/rest:go_default_library",
        "//pkg/registry/policy/rest:go_default_library",
        "//pkg/registry/rbac/rest:go_default_library",
        "//pkg/registry/scheduling/rest:go_default_library",
        "//pkg/registry/settings/rest:go_default_library",
        "//pkg/registry/storage/rest:go_default_library",
        "//pkg/routes:go_default_library",
        "//pkg/serviceaccount:go_default_library",
        "//pkg/util/async:go_default_library",
        "//pkg/util/node:go_default_library",
        "//staging/src/k8s.io/api/admissionregistration/v1:go_default_library",
        "//staging/src/k8s.io/api/admissionregistration/v1beta1:go_default_library",
        "//staging/src/k8s.io/api/apps/v1:go_default_library",
        "//staging/src/k8s.io/api/apps/v1beta1:go_default_library",
        "//staging/src/k8s.io/api/apps/v1beta2:go_default_library",
        "//staging/src/k8s.io/api/auditregistration/v1alpha1:go_default_library",
        "//staging/src/k8s.io/api/authentication/v1:go_default_library",
        "//staging/src/k8s.io/api/authentication/v1beta1:go_default_library",
        "//staging/src/k8s.io/api/authorization/v1:go_default_library",
        "//staging/src/k8s.io/api/authorization/v1beta1:go_default_library",
        "//staging/src/k8s.io/api/autoscaling/v1:go_default_library",
        "//staging/src/k8s.io/api/autoscaling/v2beta1:go_default_library",
        "//staging/src/k8s.io/api/autoscaling/v2beta2:go_default_library",
        "//staging/src/k8s.io/api/batch/v1:go_default_library",
        "//staging/src/k8s.io/api/batch/v1beta1:go_default_library",
        "//staging/src/k8s.io/api/batch/v2alpha1:go_default_library",
        "//staging/src/k8s.io/api/certificates/v1beta1:go_default_library",
        "//staging/src/k8s.io/api/coordination/v1:go_default_library",
        "//staging/src/k8s.io/api/coordination/v1beta1:go_default_library",
        "//staging/src/k8s.io/api/core/v1:go_default_library",
        "//staging/src/k8s.io/api/discovery/v1alpha1:go_default_library",
        "//staging/src/k8s.io/api/events/v1beta1:go_default_library",
        "//staging/src/k8s.io/api/extensions/v1beta1:go_default_library",
        "//staging/src/k8s.io/api/networking/v1:go_default_library",
        "//staging/src/k8s.io/api/networking/v1beta1:go_default_library",
        "//staging/src/k8s.io/api/node/v1alpha1:go_default_library",
        "//staging/src/k8s.io/api/node/v1beta1:go_default_library",
        "//staging/src/k8s.io/api/policy/v1beta1:go_default_library",
        "//staging/src/k8s.io/api/rbac/v1:go_default_library",
        "//staging/src/k8s.io/api/rbac/v1alpha1:go_default_library",
        "//staging/src/k8s.io/api/rbac/v1beta1:go_default_library",
        "//staging/src/k8s.io/api/scheduling/v1:go_default_library",
        "//staging/src/k8s.io/api/scheduling/v1alpha1:go_default_library",
        "//staging/src/k8s.io/api/scheduling/v1beta1:go_default_library",
        "//staging/src/k8s.io/api/settings/v1alpha1:go_default_library",
        "//staging/src/k8s.io/api/storage/v1:go_default_library",
        "//staging/src/k8s.io/api/storage/v1alpha1:go_default_library",
        "//staging/src/k8s.io/api/storage/v1beta1:go_default_library",
        "//staging/src/k8s.io/apimachinery/pkg/api/equality:go_default_library",
        "//staging/src/k8s.io/apimachinery/pkg/api/errors:go_default_library",
        "//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
        "//staging/src/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
        "//staging/src/k8s.io/apimachinery/pkg/util/net:go_default_library",
        "//staging/src/k8s.io/apimachinery/pkg/util/runtime:go_default_library",
        "//staging/src/k8s.io/apimachinery/pkg/util/wait:go_default_library",
        "//staging/src/k8s.io/apiserver/pkg/endpoints/discovery:go_default_library",
        "//staging/src/k8s.io/apiserver/pkg/registry/generic:go_default_library",
        "//staging/src/k8s.io/apiserver/pkg/server:go_default_library",
        "//staging/src/k8s.io/apiserver/pkg/server/healthz:go_default_library",
        "//staging/src/k8s.io/apiserver/pkg/server/storage:go_default_library",
        "//staging/src/k8s.io/apiserver/pkg/storage/storagebackend/factory:go_default_library",
        "//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
        "//staging/src/k8s.io/client-go/informers:go_default_library",
        "//staging/src/k8s.io/client-go/kubernetes/typed/core/v1:go_default_library",
        "//staging/src/k8s.io/client-go/kubernetes/typed/discovery/v1alpha1:go_default_library",
        "//staging/src/k8s.io/client-go/rest:go_default_library",
        "//vendor/github.com/prometheus/client_golang/prometheus:go_default_library",
        "//vendor/k8s.io/klog:go_default_library",
    ],
)

go_test(
    name = "go_default_test",
    size = "medium",
    timeout = "long",
    srcs = [
        "client_ca_hook_test.go",
        "controller_test.go",
        "import_known_versions_test.go",
        "master_openapi_test.go",
        "master_test.go",
    ],
    embed = [":go_default_library"],
    race = "off",
    deps = [
        "//pkg/api/legacyscheme:go_default_library",
        "//pkg/api/testapi:go_default_library",
        "//pkg/apis/batch:go_default_library",
        "//pkg/apis/networking:go_default_library",
        "//pkg/apis/storage:go_default_library",
        "//pkg/generated/openapi:go_default_library",
        "//pkg/kubelet/client:go_default_library",
        "//pkg/master/reconcilers:go_default_library",
        "//pkg/master/storageversionhashdata:go_default_library",
        "//pkg/registry/certificates/rest:go_default_library",
        "//pkg/registry/core/rest:go_default_library",
        "//pkg/registry/registrytest:go_default_library",
        "//pkg/version:go_default_library",
        "//staging/src/k8s.io/api/certificates/v1beta1:go_default_library",
        "//staging/src/k8s.io/api/core/v1:go_default_library",
        "//staging/src/k8s.io/apimachinery/pkg/api/apitesting/naming:go_default_library",
        "//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
        "//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library",
        "//staging/src/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
        "//staging/src/k8s.io/apimachinery/pkg/util/diff:go_default_library",
        "//staging/src/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
        "//staging/src/k8s.io/apimachinery/pkg/util/net:go_default_library",
        "//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library",
        "//staging/src/k8s.io/apimachinery/pkg/version:go_default_library",
        "//staging/src/k8s.io/apiserver/pkg/authorization/authorizerfactory:go_default_library",
        "//staging/src/k8s.io/apiserver/pkg/endpoints/openapi:go_default_library",
        "//staging/src/k8s.io/apiserver/pkg/server:go_default_library",
        "//staging/src/k8s.io/apiserver/pkg/server/options:go_default_library",
        "//staging/src/k8s.io/apiserver/pkg/server/resourceconfig:go_default_library",
        "//staging/src/k8s.io/apiserver/pkg/server/storage:go_default_library",
        "//staging/src/k8s.io/apiserver/pkg/storage/etcd3/testing:go_default_library",
        "//staging/src/k8s.io/client-go/discovery:go_default_library",
        "//staging/src/k8s.io/client-go/informers:go_default_library",
        "//staging/src/k8s.io/client-go/kubernetes:go_default_library",
        "//staging/src/k8s.io/client-go/kubernetes/fake:go_default_library",
        "//staging/src/k8s.io/client-go/rest:go_default_library",
        "//staging/src/k8s.io/client-go/testing:go_default_library",
        "//vendor/github.com/go-openapi/loads:go_default_library",
        "//vendor/github.com/go-openapi/spec:go_default_library",
        "//vendor/github.com/go-openapi/strfmt:go_default_library",
        "//vendor/github.com/go-openapi/validate:go_default_library",
        "//vendor/github.com/stretchr/testify/assert:go_default_library",
    ],
)

filegroup(
    name = "package-srcs",
    srcs = glob(["**"]),
    tags = ["automanaged"],
    visibility = ["//visibility:private"],
)

filegroup(
    name = "all-srcs",
    srcs = [
        ":package-srcs",
        "//pkg/master/controller/crdregistration:all-srcs",
        "//pkg/master/ports:all-srcs",
        "//pkg/master/reconcilers:all-srcs",
        "//pkg/master/storageversionhashdata:all-srcs",
        "//pkg/master/tunneler:all-srcs",
    ],
    tags = ["automanaged"],
    visibility = ["//visibility:public"],
)
